local M = {}

M.config = {
    ensure_installed = {"c", "cpp", "make", "ninja", "meson", "nix", "html",
                        "css", "javascript", "json", "jsonc", "markdown",
                        "markdown_inline", "lua", "bash", "fish", "vim",
                        "vimdoc", "query", "regex", "sql", "yaml", "python",
                        "dockerfile", "haskell", "diff"},
    sync_install = false,
    auto_install = true,
    highlight = {
        enable = true,

        disable = { "markdown" },
        additional_vim_regex_highlighting = false,
    },
}

function M:set_config()
    require("nvim-treesitter.configs").setup(self.config)
end

M.lazy_def = {
    "https://github.com/nvim-treesitter/nvim-treesitter",
    build = ":TSUpdate",
    config = function()
        M:set_config()
    end
}

return M
